home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1999 March
/
EnigmA AMIGA RUN 35 (1999)(G.R. Edizioni)(IT)[!][issue 1999-03].iso
/
earcd
/
devel
/
msqllib
/
gcc
/
os-include
/
libraries
/
msql.h
Wrap
C/C++ Source or Header
|
1999-01-01
|
3KB
|
150 lines
/*
** $VER: Msql.h 5.0 (16.09.98)
**
** definition of Msql
**
** (C) Copyright 1998 Christophe Sollet
** All Rights Reserved.
*/
#ifndef MSQL_MSQL_H
#define MSQL_MSQL_H
#ifndef EXEC_LIBRARIES
#include <exec/libraries.h>
#endif /* EXEC_LIBRARIES_H */
extern struct MsqlConnection;
struct HookMessage
{
UBYTE id; /* witch function was called */
UBYTE type; /* Enter the function or exit it?*/
struct Task *task; /* The calling task */
APTR a0; /* Register Contents at the function call or return */
APTR a1;
APTR a2;
ULONG d0;
ULONG d1;
ULONG d2;
};
#define FCH_ENTER 0
#define FCH_EXIT 1
/* Hook Function id */
#define MFT_AllocConnection 1
#define MFT_FreeConnection 2
#define MFT_GetErrMsg 3
#define MFT_Connect 4
#define MFT_SelectDB 5
#define MFT_Query 6
#define MFT_CreateDB 7
#define MFT_DropDB 8
#define MFT_Shutdown 9
#define MFT_GetProtoInfo 10
#define MFT_ReloadAcls 11
#define MFT_GetServerInfo 12
#define MFT_GetHostInfo 13
#define MFT_Close 14
#define MFT_DataSeek 15
#define MFT_FieldSeek 16
#define MFT_FreeResult 17
#define MFT_FetchRow 18
#define MFT_FetchField 19
#define MFT_ListDBs 20
#define MFT_ListTables 21
#define MFT_ListFields 22
#define MFT_ListIndex 23
#define MFT_StoreResult 24
#define MFT_LoadConfigFile 25
#define MFT_GetIntConfOld 26
#define MFT_GetCharConfOld 27
#define MFT_GetIntConf 28
#define MFT_GetCharConf 29
#define MFT_GetServerStats 30
#define MFT_CopyDB 31
#define MFT_MoveDB 32
#define MFT_UnixTimeToDate 33
#define MFT_UnixTimeToTime 34
#define MFT_GetSequenceInfo 35
#define MFT_DateToUnixTime 36
#define MFT_TimeToUnixTime 37
#define MFT_SumTimes 38
#define MFT_DateOffset 39
#define MFT_DiffTimes 40
#define MFT_DiffDates 41
/* The end of this files comes from the original "msql.h" which is ©1998 David J. Hughes. */
typedef char ** m_row;
typedef struct field_s {
char *name,
*table;
int type,
length,
flags;
} m_field;
typedef struct m_seq_s {
int step,
value;
} m_seq;
typedef struct m_data_s {
int width;
m_row data;
struct m_data_s *next;
} m_data;
typedef struct m_fdata_s {
m_field field;
struct m_fdata_s *next;
} m_fdata;
typedef struct result_s {
m_data *queryData,
*cursor;
m_fdata *fieldData,
*fieldCursor;
int numRows,
numFields;
} m_result;
#define MsqlNumRows(res) res->numRows
#define MsqlNumFields(res) res->numFields
#define INT_TYPE 1
#define CHAR_TYPE 2
#define REAL_TYPE 3
#define IDENT_TYPE 4
#define NULL_TYPE 5
#define TEXT_TYPE 6
#define DATE_TYPE 7
#define UINT_TYPE 8
#define MONEY_TYPE 9
#define TIME_TYPE 10
#define LAST_REAL_TYPE 10
#define IDX_TYPE 253
#define SYSVAR_TYPE 254
#define ANY_TYPE 255
#define NOT_NULL_FLAG 1
#define UNIQUE_FLAG 2
#define IS_UNIQUE(n) (n & UNIQUE_FLAG)
#define IS_NOT_NULL(n) (n & NOT_NULL_FLAG)
static char msqlTypeNames[][12] =
{"???", "int", "char","real","ident","null","text","date","uint",
"money","time","???"};
#endif /* MSQL_MSQL_H */